#ifndef __USBD_IPROFILE_H__
#define __USBD_IPROFILE_H__

#include <stdint.h>
#include <stdbool.h>

// USB端点定义
#define USB_EP1_INT_IN       0x81
#define USB_EP2_BULK_OUT     0x02
#define USB_EP3_BULK_IN      0x83

// USB配置
#define USB_VCAM_CONFIG_DESC_SIZ 39

// 函数声明
void usb_port_init(void);
esp_err_t USB_Trans_CmdBuf(uint8_t *pBuf,uint8_t length);
bool usb_send_bulk_data(const uint8_t* data, uint16_t len);
bool usb_send_int_data(const uint8_t* data, uint16_t len);
int usb_receive_data(uint8_t* buffer, uint16_t max_len);
void usb_prepare_receive(void);

#endif